package nsu.edu.zsq.dao;

import java.util.List;
import nsu.edu.zsq.bean.SchClass;
import nsu.edu.zsq.bean.SchClassExample;
import org.apache.ibatis.annotations.Param;

public interface SchClassMapper {
    /**
     *
     */
    long countByExample(SchClassExample example);

    /**
     *
     */
    int deleteByExample(SchClassExample example);

    /**
     *
     */
    int deleteByPrimaryKey(Integer id);

    /**
     *
     */
    int insert(SchClass record);

    /**
     *
     */
    int insertSelective(SchClass record);

    /**
     *
     */
    List<SchClass> selectByExample(SchClassExample example);

    /**
     *
     */
    SchClass selectByPrimaryKey(Integer id);

    /**
     *
     */
    int updateByExampleSelective(@Param("record") SchClass record, @Param("example") SchClassExample example);

    /**
     *
     */
    int updateByExample(@Param("record") SchClass record, @Param("example") SchClassExample example);

    /**
     *
     */
    int updateByPrimaryKeySelective(SchClass record);

    /**
     *
     */
    int updateByPrimaryKey(SchClass record);

    /**
     * 获取公选课列表
     * @return List<SchClass>
     */
    List<SchClass> listPublicTeachClass();

    /**
     * 根据专业代码获取专业选修课列表(只查找拥有授课教室的专业选修课)
     * @param majorNo 专业代码
     * @return List<SchClass>
     */
    List<SchClass> listTeachClassByMajorNo(@Param("majorNo")String majorNo);
}